ioctl/decoder_cmd: truncate unknown flags and formats when parsing commands v4l2-compliance expects that unknown flags are truncated, so adapt the code accordingly. 
diff --git a/lib/src/ioctl/decoder_cmd.rs b/lib/src/ioctl/decoder_cmd.rs index 796a951..b85c9fc 100644 --- a/lib/src/ioctl/decoder_cmd.rs +++ b/lib/src/ioctl/decoder_cmd.rs 
@@ -149,22 +149,18 @@  // SAFETY: safe because we confirmed we are dealing with a START command.  let params = unsafe { cmd.__bindgen_anon_1.start };  DecoderCmd::Start { - flags: StartCmdFlags::from_bits(cmd.flags) - .ok_or(BuildDecoderCmdError::InvalidStartFlags(cmd.flags))?, + flags: StartCmdFlags::from_bits_truncate(cmd.flags),  speed: params.speed, - format: DecoderStartCmdFormat::n(params.format) - .ok_or(BuildDecoderCmdError::InvalidStartFormat(params.format))?, + format: DecoderStartCmdFormat::n(params.format).unwrap_or_default(),  }  }  bindings::V4L2_DEC_CMD_STOP => DecoderCmd::Stop { - flags: StopCmdFlags::from_bits(cmd.flags) - .ok_or(BuildDecoderCmdError::InvalidStopFlags(cmd.flags))?, + flags: StopCmdFlags::from_bits_truncate(cmd.flags),  // SAFETY: safe because we confirmed we are dealing with a STOP command.  pts: unsafe { cmd.__bindgen_anon_1.stop.pts },  },  bindings::V4L2_DEC_CMD_PAUSE => DecoderCmd::Pause { - flags: PauseCmdFlags::from_bits(cmd.flags) - .ok_or(BuildDecoderCmdError::InvalidPauseFlags(cmd.flags))?, + flags: PauseCmdFlags::from_bits_truncate(cmd.flags),  },  bindings::V4L2_DEC_CMD_RESUME => DecoderCmd::Resume,  code => return Err(BuildDecoderCmdError::InvalidCommandCode(code)),